package com.sybil.spa.servicio;

import com.sybil.spa.dao.TipoSolicitudDAO;
import com.sybil.spa.dominio.TipoSolicitud;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service("tipoSolicitudServicio")
@Transactional(readOnly = true)
public class TipoSolicitudServicio {

   @Autowired
   private TipoSolicitudDAO tipoSolicitudDAO;

   public List<TipoSolicitud> obtenerTiposSolicitud() {
      return tipoSolicitudDAO.getTiposSolicitud(false);
   }

   public List<TipoSolicitud> obtenerTiposSolicitudActivo() {
      return tipoSolicitudDAO.getTiposSolicitud(true);
   }

   public TipoSolicitud obtenerTipoSolicitud(String clave) {
      return tipoSolicitudDAO.getTipoSolicitud(clave);
   }

   public void inactivar(String clave, String usuario) {
      TipoSolicitud tipoSolicitud = tipoSolicitudDAO.getTipoSolicitud(clave);
      tipoSolicitud.setActivo("N");
      tipoSolicitud.setUsuarioModif(usuario);
      tipoSolicitudDAO.editarTipoSolicitud(tipoSolicitud);
   }

   public void guardar(TipoSolicitud tipoSolicitud) {
      tipoSolicitud.setActivo("S");
      tipoSolicitudDAO.getTipoSolicitud(tipoSolicitud);
   }

   @Transactional(readOnly = false)
   public void eliminar(String clave) {
      TipoSolicitud tipoSolicitud = tipoSolicitudDAO.getTipoSolicitud(clave);
      tipoSolicitudDAO.eliminarTipoSolicitud(tipoSolicitud);
   }

   public void editar(TipoSolicitud tipoSolicitud) {
      tipoSolicitudDAO.editarTipoSolicitud(tipoSolicitud);
   }
}
